#coding:utf-8

"""
    selenium无界面chromedriver
"""

from selenium import webdriver

from selenium.webdriver.chrome.options import Options


# 方式一:

#创建chrome参数对象
opt = webdriver.ChromeOptions()

#把chrome设置成无界面模式,不论Windows还是Linux都可以,自动适配对应参数
opt.set_headless()

#创建chrome无界面对象
driver = webdriver.Chrome(chrome_options=opt)

"""
# 方式二(推荐方式):

chrome_options = Options()

chrome_options.add_argument('--no-sandbox')  #解决DevToolsActivePort文件不存在的报错
chrome_options.add_argument('window-size=1920x3000') #指定浏览器分辨率
chrome_options.add_argument('--disable-gpu') #谷歌文档提到需要加上这个属性来规避bug
chrome_options.add_argument('--hide-scrollbars') #隐藏滚动条, 应对一些特殊页面
chrome_options.add_argument('blink-settings=imagesEnabled=false') #不加载图片, 提升速度
chrome_options.add_argument('--headless')  #浏览器不提供可视化页面. linux下如果系统不支持可视化不加这条会启动失败
chrome_options.binary_location = r"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" #手动指定使用的浏览器位置,这里是Windows路径
# webdriver.Chrome函数里有个参数executable_path，默认值是'chromedriver.exe', 一般是在python安装目录下(anaconda是在Scripts目录下), 会搜索系统path变更，也可以修改该值，使用其他路径,
# driver = webdriver.Chrome(executable_path=my_driver_path,chrome_options=chrome_options)
driver=webdriver.Chrome(chrome_options=chrome_options)

"""
#访问百度
driver.get("http://www.baidu.com/")
#打印页面源码
print(driver.page_source)
#关闭页面
driver.quit()
#关闭浏览器,回收资源
driver.close()

